import java.util.Scanner;
/*给你一个 m x n 的矩阵 matrix 。如果这个矩阵是托普利茨矩阵，返回 true ；否则，返回 false 。
如果矩阵上每一条由左上到右下的对角线上的元素都相同，那么这个矩阵是 托普利茨矩阵 。*/
public class Main {
    public static boolean check(int[][] nums){
        int m=nums.length;
        int n=nums[0].length;
        for(int i=1;i<=m;i++){
            for(int j=1;j<=n;j++){
                if(nums[i][j]!=nums[i-1][j-1])return false;
            }
        }
        return true;
    }
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int m=sc.nextInt();
        int n=sc.nextInt();
        int[][] nums=new int[m][n];
        for(int i=0;i<m;i++){
            for(int j=0;j<n;j++){
                nums[i][j]=sc.nextInt();
            }
        }
        boolean res=check(nums);
        System.out.println(res);
    }
}